1. Field of the Invention
The present invention relates to an image processing apparatus and an image processing method, and a computer program and a storage medium for the same apparatus and method.
2. Description of the Related Art
With increase in the availability of digital still cameras, digital video cameras and other digital cameras in recent years, digital display of photo images has become popular. Particularly, opportunities have increased to handle images of photographic tones as digital image data on the personal computer (PC). Moreover, with increase in the availability of ink jet printers, image data can be printed easily.
Further, as application software for correcting or processing images is popularly employed, it has become possible for the users to process images as they desire. For example, a slightly reddish image can be adjusted by adding a cyan as a complementary color for the red. On the other hand, when the subject appears dark, for example, in a backlight image, the image can be made lighter by correcting brightness to obtain an optimum image.
In recent years, the color reproduction of printers has improved, which enables color adjusting with high accuracy. Consequently, it is possible for the user to set parameters (color adjustment parameters) for color adjustment, and finish up a print image in a color tone which the user desires.
However, in some cases, the drawing interface of OS (operating system) has a restriction in bit accuracy. For this reason, according to Japanese Patent Application Laid-Open No. 2002-344763, when an application transfers image data to the printer driver, the bit accuracy of image data processed in the application, is reduced to the bit accuracy of the drawing interface of the OS and the image data is printed with reduced bit accuracy. Even if images are processed with a 16-bit accuracy in an application, image data is converted to a restrictive number of bits (8 bits, for example) of the drawing interface of an OS, and transferred to the printer driver.
To circumvent this restriction on bit accuracy, if the image processing bit number (hereafter referred to as a bit number) of the drawing interface of the OS is smaller than the bit number of the printer driver, image processing for printing which emphasizes gray-scale tone, needs to be performed in the printer driver instead of the application. Particularly in printing which requires a high bit accuracy, such as monochrome printing, it is necessary to perform image processing in the printer driver. If image processing, such as bit conversion and a color process, is performed in the printer driver, it is possible to perform printing which circumvents the restriction on bit accuracy.
On the other hand, in sample printing, because the size of printed images is smaller than the size in normal printing, a high bit accuracy as in normal printing is not required. Therefore, so long as printing does not require a high bit accuracy, images can be processed in either the application or the printer. However, a printer driver is required for each printer and the printer driver is a device-dependent process section. In a system having a plurality of printers, a number of printer drivers increases by the number of printers. Therefore, it is necessary to reduce the capacity of each printer driver as much as possible and limit its functions to a minimum required by the printer (i.e., only functions peculiar to each individual printer).
Meanwhile, a drawing application can be operated irrespective of printer types. Therefore, in contrast to the printer drivers, an application is a device-independent process section. For this reason, an application can possess functions common to different printers. For example, in order to perform sample printing, a layout is created by the application, and data is transferred through the OS to the printer driver. As described above, sample printing does not demand a high bit accuracy. Accordingly, even if the OS restricts the bit accuracy in sample printing, this has no adverse effects on the printing. Therefore, by concentrating the functions common to different printers on an application instead of providing those functions to each printer driver, the capacity of the whole system can be minimized.
As described, it has become necessary to change the image process sections according to kinds of printing, such as normal printing and sample printing.
In conventional image processing, the image process sections are not changed in order to perform image processing in appropriate process sections according to kinds of printing (normal printing and sample printing, for example).